One application of a personal computer is as a workstation where an executable application is loaded into the workstation, operating on top of an operating system like Microsoft's Windows. The operator uses the combination of the executable application and the operating system to enter data, such as orders, in response to customer requests, for example, by telephone calls received at a call center. Once the data is entered and verified, the data is typically forwarded from the workstation computer over a communications network to a host computer or server for storage and further processing (e.g., for order fulfillment, billing, service, etc.) driven by the host computer. Typically, a large number of workstations are coupled to a single host or server.
The executable application (and operating system, if desired) in the personal computer may be initially obtained from the server (in a download operation) or copied from transportable media (like a CD ROM or other storage devices such as floppy diskettes). The executable application (and operating system) randomly and, often without warning, at times become corrupted (and "crash") due to the numerous temporary files which are cached or written during "normal" operation of the executable application and operating system. In such cases, then, the personal computer or client must be turned off, rebooted and another copy of the application program obtained.
Obtaining another copy of the application program (and/or the operating system) from the server after the application or the operating system has become corrupted and crashed takes communication resources, bandwidth which otherwise might be used to communicate data from the other workstations also attached to the server through the network. Frequently, a large number of workstations are all connected to the same server through the communications network and, in the order entry application described above, the primary purpose of the communication network would be for communicating order entry data from each of the workstations up to the server as each order is entered. In its peak operation, the communications from the workstations might take most, if not all, of the capacity of the communication channel, so it would be desirable to avoid extra communications that would be involved in downloading another copy of the executable application (and operating system) if a workstation crashed from a corrupted executable application or operating system.
Alternatively, each workstation might be brought back up (or restarted and reloaded with an uncorrupted copy of the executable application and operating system) after a crash from a separate physical media available at each individual workstation. Two undesirable features relate to having media at each workstation: the cost of distributing and locating the physical media with the executable application and operating system at each of the plurality of workstations and the security of the media from some user removing the media with the executable applications, either inadvertently or as a theft.
Accordingly, the prior art systems for using an executable application and operating system at a workstation in a client-server environment have significant disadvantages and limitations.